Detection of scrambling code confusion

ABSTRACT

Detection of a confusion caused by scrambling code reuse is provided herein. Timing measurements, as observed by a mobile device, and an identification of primary scrambling codes associated with the timing measurements are captured. The timing measurements are identified by the primary scrambling codes for the particular radio measured. The mobile device also reports its location information. Radios for which timing measurements have been received are paired. Based on the paired radios and a history of observed time difference reference values for radio pairs, comparisons are made between paired radios having at least one common radio. Radios, exhibiting a set of values that is near an expected range, are removed from the analysis. Radios, exhibiting two sets of values that are distinct, are isolated in order to identify the radio that is causing the scrambling code confusion.

RELATED APPLICATIONS

This application is a continuation of, and claims priority to each of,U.S. patent application Ser. No. 15/860,078, filed on Jan. 2, 2018, andentitled “DETECTION OF SCRAMBLING CODE CONFUSION,” which is acontinuation of U.S. patent application Ser. No. 15/183,999, filed onJun. 16, 2016, now issued as U.S. Pat. No. 9,887,731, and entitled“DETECTION OF SCRAMBLING CODE CONFUSION,” which is a continuation ofU.S. patent application Ser. No. 14/926,714, filed on Oct. 29, 2015, nowissued as U.S. Pat. No. 9,473,202, and entitled “DETECTION OF SCRAMBLINGCODE CONFUSION,” which is a continuation of U.S. patent application Ser.No. 14/627,031, filed on Feb. 20, 2015, now issued as U.S. Pat. No.9,204,324, and entitled “DETECTION OF SCRAMBLING CODE CONFUSION,” whichis a continuation of U.S. patent application Ser. No. 13/537,697, filedon Jun. 29, 2012, now issued as U.S. Pat. No. 8,995,986, and entitled“DETECTION OF SCRAMBLING CODE CONFUSION.” The entireties of theforegoing applications are hereby incorporated by reference herein.

TECHNICAL FIELD

The subject disclosure relates to wireless communications and, moreparticularly, to detection of scrambling code confusion in a wirelesscommunications environment.

BACKGROUND

Wide adoption of mobile devices along with ubiquitous cellular datacoverage has resulted in an explosive growth of mobile applications thatexpect always-accessible wireless networking. This explosion has placedstrains on resources that are scarce in the mobile world. On the userside, dropped calls have been blamed for user dissatisfaction. On thenetwork side, instances of dropped calls can occur due to scramblingcode confusion or scrambling code conflict, which occurs when a mobiledevice encounters two sectors that utilize the same scrambling code andthe network cannot identify on which sector the mobile device isreporting.

BRIEF DESCRIPTION OF THE DRAWINGS

Various non-limiting embodiments are further described with reference tothe accompanying drawings.

FIG. 1 illustrates an example, non-limiting wireless communicationsenvironment in which the disclosed aspects can be utilized, according toan embodiment.

FIG. 2 illustrates an example, non-limiting system configured to detectscrambling code conflicts, according to an aspect.

FIG. 3 illustrates an example, non-limiting system for building ahistory of observed time difference reference values in order toautomatically detect scrambling code conflicts, according to an aspect.

FIG. 4 illustrates an example, non-limiting system for detecting asource of a scrambling code conflict and implementing an action relatedto the source of the conflict, according to an aspect.

FIG. 5 illustrates another example, non-limiting system configured toselectively identify at least one radio that is causing the scramblingcode conflict, according to an aspect.

FIG. 6 illustrates an example, non-limiting system configured toautomatically reassign scrambling codes in a wireless communicationsnetwork to minimize scrambling code conflicts, according to an aspect.

FIG. 7 illustrates an example, non-limiting system for detectingscrambling code conflicts while compensating for data reportederroneously, according to an aspect.

FIG. 8 illustrates an example, non-limiting system that employs anartificial intelligence component, which facilitates automating one ormore features in accordance with the disclosed aspects.

FIG. 9 illustrates a method for detection of scrambling code conflictsin a wireless communications network, according to an aspect.

FIG. 10 illustrates an example, non-limiting method for identifying atleast one radio that is causing the scrambling code conflict, accordingto an aspect.

FIG. 11 illustrates an example, non-limiting method for causing one ormore actions to be performed based on detection of scrambling codeconfusion, according to an aspect.

FIG. 12 illustrates a schematic example wireless environment that canoperate in accordance with aspects described herein.

FIG. 13 illustrates a block diagram of access equipment and/or softwarerelated to access of a network, in accordance with an embodiment.

FIG. 14 illustrates a block diagram of a computing system, in accordancewith an embodiment.

DETAILED DESCRIPTION

Aspects of the subject disclosure will now be described more fullyhereinafter with reference to the accompanying drawings in which exampleembodiments are shown. In the following description, for purposes ofexplanation, numerous specific details are set forth in order to providea thorough understanding of the various embodiments. However, thesubject disclosure may be embodied in many different forms and shouldnot be construed as limited to the example embodiments set forth herein.

It is noted that although various aspects and embodiments are discussedherein with respect to Universal Mobile Telecommunications System(UMTS), the subject disclosure is not limited to a UMTS implementation.For example, aspects or features of the disclosed embodiments can beexploited in substantially any wireless communication technology. Suchwireless communication technologies can include Universal MobileTelecommunications System (UMTS), Code Division Multiple Access (CDMA),Wi-Fi, Worldwide Interoperability for Microwave Access (WiMAX), GeneralPacket Radio Service (GPRS), Enhanced GPRS, Third Generation PartnershipProject (3GPP) Long Term Evolution (LTE), Third Generation PartnershipProject 2 (3GPP2) Ultra Mobile Broadband (UMB), High Speed Packet Access(HSPA), Evolved High Speed Packet Access (HSPA+), High-Speed DownlinkPacket Access (HSDPA), High-Speed Uplink Packet Access (HSUPA), Zigbee,or another IEEE 802.XX technology. Additionally, substantially allaspects disclosed herein can be exploited in legacy telecommunicationtechnologies.

The embodiments contained herein are not intended, however, as anextensive or exhaustive overview. Instead, the sole purpose of thisdetailed description is to present some concepts related to someexample, non-limiting embodiments in a simplified form as a prelude tothe more detailed description of the various embodiments that follow.

In an example embodiment, an aspect relates to a system that can includeat least one memory and at least one processor. The memory can storecomputer-executable instructions and the at least one processor can becommunicatively coupled to the at least one memory. The processor canfacilitate execution of the computer-executable instructions to at leastconstruct a history of a plurality of observed time difference referencevalues for a plurality of radio pairs based on timing measurements andlocation information reported by a plurality of mobile devices. Based ona comparison of the plurality of observed time difference referencevalues for sets of the plurality of radio pairs that share a commonradio, the processor can also facilitate execution of thecomputer-executable instructions to identify a radio for the sets of theplurality of radio pairs as a cause of a scrambling code conflictresulting from a mobile device of the plurality of mobile devicesdetecting two radios having the same scrambling code.

Another example embodiment relates to a method that can includereceiving, by a system comprising a processor, timing measurements andlocation information from a plurality of mobile devices. The timingmeasurements can comprise identification information associated withrespective radios. The method can also include establishing, by thesystem, a set of reference values for radio pairs from the timingmeasurements and evaluating, by the system, a first subset of the set ofreference values. The first subset of reference values comprise timingmeasurements for a first radio of the radio pairs. The method can alsoinclude determining, by the system, as a result of the evaluating thatthe first radio contributes to at least a set of the plurality of mobiledevice receiving communication from two radios that use a samescrambling code resulting in a scrambling code conflict.

A further example embodiment relates to a non-transitorycomputer-readable storage medium storing computer-executableinstructions that, in response to execution, cause a system including aprocessor to perform operations. The operations can include storing aplurality of observed time difference reference values for a pluralityof radio pairs based on timing measurements and location informationreported by a plurality of mobile devices. The operations can alsoinclude comparing the plurality of observed time difference referencevalues for sets of radio pairs of the plurality of radio pairs. The setsof radio pairs share a common radio. The operations further includeidentifying the common radio as a cause of scrambling code confusionresulting from two radios using a same scrambling code.

Referring initially to FIG. 1, illustrated is an example, non-limitingwireless communications environment 100 in which the disclosed aspectscan be utilized, according to an embodiment. A wireless communicationsenvironment 100 can comprise any number of sectors (e.g., sites, cells,and so forth). The illustrated wireless communications environment 100can include a first sector 102, a second sector 104, a third sector 106,and a fourth sector 108, although more (or fewer) than four sectors canbe utilized in a wireless communications environment. Each sector has arespective geographic area or coverage area. For example, first sector102 has a first coverage area 110, second sector 104 has a secondcoverage area 112, third sector 106 has a third coverage area 114, andfourth sector 108 has a fourth coverage area 116.

Also illustrated are two mobile devices, labeled as a first mobiledevice 118 and a second mobile device 120, although more than two mobiledevices can be operated within the wireless communications environment100. As utilized herein, a mobile device can include a UMTS-basedelectronic device, such as, but not limited to, a cell phone, a PDA(personal digital assistant), a media player, a digital camera, a mediarecorder, a laptop, a personal computer, a printer, a scanner, a tablet,a GPS (global positioning system) module, a gaming module, and so forth.Further, the device can also include UMTS-based appliances that can beemployed, for example, in a home, office, building, retail store,restaurant, hotel, factory, warehouse, and so on. As previously noted,although the various aspects are discussed herein with reference toUMTS, the aspects are not limited to an UMTS implementation. Instead,the various aspects can be utilized with other network technologies andUMTS technology is utilized herein for purposes of simplicity.

Each sector can be assigned a different scrambling code, which is a codeutilized to distinguish each sector's transmissions from transmissionsfrom other sectors. For example, scrambling codes can differentiateWCDMA (Wideband CDMA) radios from one another, as detected by mobiledevices (e.g., user equipment). Radio Access Network (RAN) planners haveabout 512 (e.g., numbered 0 through 511) possible scrambling codes toassign to the radios (e.g., sectors). Although each cell should beassigned a unique scrambling code, since there are a finite number ofscrambling codes and there can be thousands of cells, some reuse of eachscrambling code might be necessary in a wireless communicationsenvironment. To facilitate the scrambling code reuse, the RAN plannersconsider the radios that are located in proximity to each other andattempt to distribute the scrambling codes so that two or more sectorshaving the same scrambling code are not able to be detected by a mobiledevice at the same time. If the mobile device could encounter andmeasure timing parameters of both the sectors (e.g., a first sector anda second sector) with the same scrambling code at the same time,confusion can result because the mobile device might intend tocommunicate with a first sector, but is in fact communicating with thesecond sector. Therefore, the network cannot identify on which cell themobile device is reporting. Another problem that can occur isinterference among cells sharing the same scrambling code. Poorscrambling code reuse planning can also result in dropped calls.

It should be noted that although generally 512 scrambling codes areavailable (e.g., numbered 0 to 511), some scrambling codes might bereserved and not available for assignment to cells. For example, theavailable scrambling codes can be 0 through 503, 510, and 511 (wherescrambling codes 504 through 509 can be reserved).

For example, in dense urban settings, user locations (e.g., mobiledevice locations) can vary by various geographic coordinates includinglatitude, longitude, and altitude (e.g., three-dimensions). In manycities (e.g., Manhattan, Los Angeles, San Francisco, Chicago, and soforth), numerous small footprint sites exist to cover smaller areas.Users, through their respective mobile devices, might be more prone tosee many sites both near and far away due to tall buildings, hilltops,and so forth. With the higher penetration of sites in smaller geographicareas, scrambling code reuse can become difficult, resulting in ascrambling code conflict, which can be hard to detect as problematic.

The various aspects disclosed herein can provide a direct means todetermine when scrambling code conflict is occurring by using timingmeasurements to differentiate between two source sites. Timingmeasurements can be translated to distance with a greater degree ofaccuracy as compared to RSCP (Received Signal Code Power). For example,detection of conflicting mobile device to site distance can be anindication of scrambling code confusion.

As the first mobile device 118 and the second mobile device 120 aremoved within the wireless communications environment 100 and/or aremoved into or out of the coverage area(s) of the wireless communicationsenvironment 100, the device might be able to measure timing for multiplesites. For example, first sector 102 (and first mobile device 118) arelocated at a high altitude (e.g., at the top of large building) andthird sector 106 is within sight of the first mobile device 118.However, the distance between first sector 102 and third sector 106 isfar enough that when scrambling code assignment with reuse wasestablished, both the first sector 102 and third sector 106 wereassigned the same scrambling code, since it was not foreseeable that aconflict would occur between these sites. However, in use, the mobiledevice is able to detect communications from both sectors, which utilizethe same scrambling code, and confusion can occur because the device isnot aware that it is in communication with two different sectors thatuse the same scrambling code. Such scrambling code conflicts and theresulting scrambling code confusion can cause numerous issues for themobile device during operation. These issues can include dropped calls,poor communication quality, and failed handovers.

FIG. 2 illustrates an example, non-limiting system 200 configured todetect scrambling code conflicts, according to an aspect. Benefits ofremoving scrambling code conflicts utilizing the disclosed aspects caninclude improved network performance, a reduction in the number ofdropped calls, improvement of call quality and related issues, andimprovement of handover related issues (e.g., mobility). Further, thedisclosed aspects can be reactionary and can provide an effective meansto detect problems that could arise from new radio additions and/or newradio code plans.

System 200 can be implemented in a network (e.g., base station, accesspoint, sector, NodeB, site, and so forth). As previously noted, althoughthe various aspects are discussed herein with reference to UMTS, thedisclosed aspects are not limited to an UMTS implementation. Instead,the various aspects can be utilized with other network technologies andUMTS technology is utilized herein for purposes of simplicity whileexplaining the various aspects.

System 200 can include at least one memory 202 that can store computerexecutable components and computer executable instructions. System 200can also include at least one processor 204, communicatively coupled tothe at least one memory 202. Coupling can include various communicationsincluding, but not limited to, direct communications, indirectcommunications, wired communications, and/or wireless communications.

The at least one processor 204 can facilitate execution of the computerexecutable components and instructions stored in the memory 202. It isnoted that although one or more computer executable components may bedescribed herein and illustrated as components separate from memory 202(e.g., operatively connected to memory), in accordance with variousembodiments, the one or more computer executable components could bestored in the memory 202. Further, while various components have beenillustrated as separate components, it will be appreciated that multiplecomponents can be implemented as a single component, or a singlecomponent can be implemented as multiple components, without departingfrom example embodiments.

System 200 can also include a generate component 206 that can beconfigured to construct a history of observed time difference referencevalues for radio pairs based on reports 208 transmitted by a multitudeof mobile devices 210 (e.g., first mobile device 118, second mobiledevice 120, and so forth). For example, each mobile device can measuremultiple radios during defined events related to soft handover or atvarious other times. These measurements can be reported, by the mobiledevice, to the network (e.g., to system 200). In an implementation, themeasurements can be reported by the mobile device in a Radio ResourceControl (RRC) Measurement Report. In another implementation, themeasurements can be received as reference signal time difference (RSTD)measurements.

The measurements can comprise, for each radio (e.g., radio for eachsector), a primary scrambling code and a timing measurement (Tm) value.The primary scrambling code can be utilized to distinguish each sector'stransmissions from transmissions from other sectors (or cells). The Tmvalue is a timing measurement representing the difference between theSFN (System Frame Number) and the CFN (Connection Frame Number) asreceived at the mobile device for each radio. An observed timedifference (OTD) calculation is a timing difference between radios,where:

OTDji=Tmj−Tmi

where Tmj is a timing measurement of radio j and Tmi is a timingmeasurement of radio i, as measured by the mobile device.

Another report conveyed by the mobile devices, and received at thesystem 200, can be a location report that identifies the geographiccoordinates or location (e.g., latitude, longitude, altitude) of themobile device at the time the report is generated by the mobile device.In an implementation, the location report can be a RANAP (Radio AccessNetwork Application Protocol) Location Report that can be conveyed tothe network (e.g., to a reception component) when requested by anexternal service through the control plane, or at a different time.

The one or more reports 208 received from the mobile devices 210 (e.g.,a mobile device can convey more than one report and/or multiple mobiledevices can transmit one or more reports) can be retained in a database212 (as illustrated) or in another computer readable storage medium. Itis noted that a database (e.g., database 212) can include volatilememory or nonvolatile memory, or can include both volatile memory andnonvolatile memory. By way of illustration, and not limitation,nonvolatile memory can include read only memory (ROM), programmable ROM(PROM), electrically programmable ROM (EPROM), electrically erasablePROM (EEPROM), or flash memory. Volatile memory can include randomaccess memory (RAM), which can operate as external cache memory. By wayof illustration and not limitation, RAM is available in many forms suchas static RAM (SRAM), dynamic RAM (DRAM), synchronous DRAM (SDRAM),double data rate SDRAM (DDR SDRAM), enhanced SDRAM (ESDRAM), SynchlinkDRAM (SLDRAM), and direct Rambus RAM (DRRAM). The memory (e.g., datastores, databases, and so on) of the various disclosed aspects isintended to comprise, without being limited to, these and any othersuitable types of memory. In an aspect, database 212 is included as acomponent within the disclosed system(s). However, according to otheraspects, the database 212 can be located remote from the system(s) butcan be accessed by the system(s), such as over an air interface.

Also included in system 200 is an analysis component 214 that can beconfigured to compare the observed time difference reference values forsets of radio pairs that share a common radio. For example, a firstmobile device reports timing measurements for Sector A, Sector B, andSector D and the following radio pairs are created (where 1 representsthe first mobile device: AB₁, AD₁, BA₁, BD₁, DA₁, DB₁. A second mobiledevice reports timing measurements for Sector B, Sector C, and Sector Dand the following radio pairs are created (where 2 represents the secondmobile device): BC₂, BD₂, CB₂, CD₂, DB₂, and DC₂. Further, a thirdmobile device reports timing measurements for Sector B, Sector E, andSector F and the following radio pairs are created (where 3 representedthe third mobile device): BE₃, BF₃, EB₃, EF₃, FB₃, and FE₃. In thisexample, radio pairs AB₁, BA₁, DB₁, BC₂, BD₂, CB₂, DB₂, BE₃, BF₃, EB₃,and FB₃ share a common radio (e.g., Sector B). In an implementation, theradio pairs and associated values can be retained in a database, whichcan be database 212 or a different database.

System 200 can also include an assessment component 216 that can beconfigured to identify at least one radio from the set of radio pairs,where the at least one radio is a cause of a scrambling code conflict.The scrambling code conflict or confusion can result from a mobiledevice detecting two radios with a same scrambling code. According to animplementation, through a process of elimination, assessment component216 can remove from the evaluation radios that have been determined notto be the cause of scrambling code confusion. In an example, assessmentcomponent 216 can evaluate the pairings associated with the varioussectors (or radios) and in each case (e.g., for each pairing) theremight be a common link of scrambling code confusion, however, betweenother pairs there might not be scrambling code confusion.

In an implementation, layer three messages can be collected by networkIuB probes or by vendor provided tracing applications. The disclosedaspects can collect RANAP Location Reports and RRC Measurement Reportsfor all WCDMA devices active in the network. As RANAP Location reportsare received, RRC Measurement Reports for the same mobile device can becollected and analyzed. The RANAP Location Report can provide a fixedlocation for the mobile device, which can be an AGPS (Assisted GlobalPositioning System) mobile device. The RANAP Location Reports can bematched with RRC Measurement Reports, such as through interpolation orextrapolation. The result of the matching can be a temporary linkbetween the RRC Measurement Report with the RANAP Location Report, whichcan be linked with minimal, if any, error.

Further to this implementation, from the RRC Measurement Report, a listof observed timing difference values (O_(ji) values) can be constructed,where O_(ji) is equal to the timing measurement of site j (as measuredby the mobile device) minus the timing measurement of site i (asmeasured by the mobile device):

O _(ji) =TM _(j) −TM _(i)

The O_(ji) can be translated to an O_(ji)R (Reference) value thatremoves the known propagation delay known from the actual mobile devicelocation. Thus, the reference value (O_(ji)R) is equal to the observedtime difference (O_(ji)) minus the propagation delay (D_(ij)R).

O _(ji) R=O _(ji) −D _(ij) R

where D_(ij)R represents the propagation delay difference for the knownmobile device location and the known radio locations (e.g., Site i andSite j). A history of O_(ji)R values can be built for each Radio Pairij. Detection of a scrambling code conflict issue occurs when twodistinct cluster of samples within the buffer exist. The specific casecan be reported to allow radio planners to rectify the conflict. In someimplementations, the detection of the scrambling code conflict canresult in automated reassignment of scrambling codes.

FIG. 3 illustrates an example, non-limiting system 300 for building ahistory of observed time difference reference values in order toautomatically detect scrambling code conflicts, according to an aspect.Included in system 300 is a mapping component 302 that can be configuredto match a location of a mobile device (from the set of mobile devices210) to a set of timing measurements reported by the respective mobiledevice. Each timing measurement in the set of timing measurements can beassociated with a radio identified by its primary scrambling code.Further, each mobile device can report its respective location and/ortiming measurements.

An association component 304 can be configured to identify pairs ofradios from the radios identified in the set of timing measurements. Forexample, pairs of radios can be identified based on timing measurementsfrom each mobile device. Thus, if a first mobile device reports timingmeasurements for three radios, association component 304 can identifypairs of radios from the three radios. Further, if a second mobiledevice reports timing measurements for four radios, associationcomponent 304 can identify pairs of radios from the four radios. Theidentification of the radio pairs from the timing measurements reportedby the first mobile device is independent of the creation of the radiopairs from the timing measurements reported by the second mobile device(and subsequent mobile devices).

Also included in system 300 is a computation component 306 that can beconfigured to calculate an observed time difference value for each pairof radios. In an implementation, the pair of radios comprises a firstradio and a second radio. Further to this implementation, computationcomponent 306 subtracts a first timing measurement of a first radio froma second timing measurement of a second radio (as measured by the mobiledevice) to calculate the observed time difference value. For example,the first radio is Radio I and the second radio is Radio J. The observedtime difference of these radios (O_(ji)) is the timing measurement ofRadio I subtracted from the timing measurement of Radio J(O_(ji)=TM_(j)−TM_(i)) For example, each Tm value, when compared withall other radio Tm values, yields an observed time difference (OTD),where OTD_(ji)=Tm_(j)−Tm_(i), where j and i represent Radio j and Radioi, respectively. The location report or current location provides afixed reference location for each Tm value. In the case of a UMTSnetwork, which might not be GPS synchronized, the fixed referencelocation can be established based on the location report when thelocation report is received at about the same time the Tm values arereceived. Once the fixed reference location is obtained, the OTDmeasures can be recorded (e.g., retained in database 212). Overtime, asmany measurements are obtained, a single radio issue can be detected, ascompared with all other radios for which information has been received.

A reference value component 308 can be configured to remove apropagation delay difference (D_(ji)R) from the observed time differencevalue (O_(ji)) to derive an observed time difference reference value(O_(ji)R) (O_(ji)R=O_(ji)−D_(ji)R). In an example, the propagation delaycan be calculated for each pair of radios based in part on the locationinformation reported by each mobile device.

Also included in system 300 can be an update component 310 that can beconfigured to populate a data store (e.g., database 212 or anotherdatabase) with the observed time difference reference value for eachpair of radios. The database that comprises the observed time differencereference values can be saved as historical data and utilized for laterdetection of scrambling code conflicts according to the disclosedaspects.

FIG. 4 illustrates an example, non-limiting system 400 for detecting asource of a scrambling code conflict and implementing an action relatedto the source of the conflict, according to an aspect. System 400 caninclude a reception component 402 that can be configured to receive thereports 208 from the mobile devices 210.

Each mobile device included in the set of mobile devices 210 can beidentified based on its international mobile subscriber identity (IMSI404), which is a unique identification associated with each mobiledevice. The IMSI 404 can be a number having 15 digits or any othernumber of digits. The IMSI 404 can be included in one or more reports208 transmitted by each mobile device.

Each mobile device can also report timing measurements values (Tm values406), which are the timing measurements as measured by each mobiledevice. In an implementation, the Tm values 406 can be reported in anRRC measurement report or a different type (or name) of report. Each Tmvalue 406 can be associated with a primary scrambling code (PSC 408),which differentiates radios (e.g., WCDMA) radios from one another, asdetected by the mobile device. The PSC 408 can be transmitted in the RRCmeasurement report according to an implementation.

Each mobile device can also report its current location 410 (e.g.,position information), which can include various geographic coordinatesincluding latitude, longitude, and/or altitude. In an implementation,the current location 410 of the mobile device can be received in a RANAPlocation report or a different type (or name) of report.

As stated above, the various information from each mobile device (e.g.,IMSI 404, Tm 406, PSC 408, current location 410) can be received byreception component 402. For example, the reception component 402 canreceive the timing measurements in radio resource measurement reportstransmitted by respective mobile devices. Further to this example, thereception component 402 can receive the location information in radioaccess network application protocol location reports transmitted by therespective mobile devices. In another example, the reception component402 can be configured to receive the timing measurements as referencesignal time difference values reported by respective mobile devices.

Further, the various information can be retained in database 212. Thevarious information and/or reports can be retained in the database (orother storage medium) in any type of format (e.g., table, list, and soforth) that allows the information to be accessed, as needed.

Also included in system 400 can be an output component 412 that can beconfigured to output a report that identifies at least one radio as thecause of the scrambling code conflict. In an example, the report can beutilized by network planners to redistribute scrambling codes among thesites in order to mitigate scrambling code confusion.

For example, output component 412 can be configured to conveyinformation to a network operator or another user and/or entity (e.g.,the Internet, another system, a computer, machinery, and so forth),hereinafter referred to as users and/or entity, depending on thecontext. At substantially the same time as the analysis is completed bysystem 400 (or sometime thereafter), output component 412 can convey theinformation to a user and/or entity. In an implementation, the analysisinformation can be transmitted in an exception report that includes theidentified sector and/or can include analysis and information related tothe other sectors (e.g., sector identification, timing measurementsreported by the mobile devices, an identification of the type of eachmobile device, and so forth). Based on the analysis received from outputcomponent 412, the scrambling code of the identified site can be changedto a different scrambling code or another action can be performed asdeemed appropriate based on various considerations including standardoperating procedures related to the network.

FIG. 5 illustrates another example, non-limiting system 500 configuredto selectively identify at least one radio that is causing thescrambling code conflict, according to an aspect. Included in system 500is an evaluation component 502 that can be configured to eliminateradios in the set of radio pairs that comprise observed time differencereference values within an expected range of values. An expected rangeof values can be within (plus or minus) one or two chips of a calculatedobserved time difference reference value. For example, a range ofcalculated observed time difference reference values can be in the rangeof 15000 to 15004, for example, indicating that the sector is within asingle bin frame.

In a UMTS network, for example, grid frames can be of arbitrary sizeand/or number. However, for simplicity, a bin grid frame size can beconsidered to be 100 meters by 100 meters for the purposes of discussionherein, as this closely matches current UMTS chip size (e.g., UMTS chiprate is 3.84 MBit/sec, therefore one chip is roughly 260.42 nsec and 78meters). Additionally, a bin grid can comprise other bin grids orportions thereof. Moreover, bin grids may overlap wholly or partiallyand at any orientation. It is further noted that a bin grid can bephysically two dimensional (2D) or three dimensional (3D), wherein a 2Dgrid can, for example, include x, y coordinates (e.g., latitude,longitude) and a 3D grid can add, for example, a z dimension (e.g.,height).

In another implementation, evaluation component 502 can be configured todetermine a single radio is associated with two sets of observed timedifference reference values. For example, a first set can be in therange of 15000 to 15004, for example, and a second set can be within therange of 26000 to 26004, for example. This indicates that the timingmeasurements are associated with two (or more) different grid bins. Inthe example, there are two distinct sets of values that represent twodifferent scrambling codes, which indicates a potential for scramblingcode confusion. Thus, evaluation component 502 can be configured toisolate at least one radio as a cause of scrambling code confusion.

FIG. 6 illustrates an example, non-limiting system 600 configured toautomatically reassign scrambling codes in a wireless communicationsnetwork to minimize scrambling code conflicts, according to an aspect.System 600 includes an distribution component 602 that can be configuredto establish a different primary scrambling code for at least one radio,identified as causing a scrambling code conflict. For example,distribution component 602 can be configured to evaluate the scramblingcodes of multiple sites, including both sites that are identified in theradio pairs as well as other sites that are located in a wirelesscommunications network.

In an implementation, some networks can be self-configuring networks,wherein new base stations that are added to a network can beautomatically configured and integrated into the network. The disclosedaspects can be utilized in the self-configuration networks to enabledynamic identification and configuration of scrambling codes to mitigatescrambling code confusion. In another implementation, some networks canbe self-organizing networks, wherein scrambling codes can be dynamicallyestablished and/or modified through use of the various aspects disclosedherein.

Also included in system 600 can be an allocate component 604 that can beconfigured to assign the different primary scrambling code to at leastone radio to remove the detected scrambling code conflict. In animplementation, the allocate component 604 can assign (or reconfigure)scrambling codes to other sites. For example, the distribution component602, in order to mitigate the scrambling code conflict detected by oneor more mobile devices, might determine that if one scrambling code ischanged, such change will cause a different scrambling code conflict.Therefore, more than one scrambling code might need to be reassigned.Allocate component 604 can be configured to automatically reassign orchange the scrambling codes for various sites as determined by thedistribution component 602 or other system components.

FIG. 7 illustrates an example, non-limiting system 700 for detectingscrambling code confusion while compensating for data reportederroneously, according to an aspect. System 700 is configured to detecta mobile device that is not reporting correct information, which can bedue to the mobile device being defective and/or for other reasons (e.g.,incorrect time measurements, and so forth). In order to mitigate thechances that erroneous data is utilized to detect a scrambling codeconflict and thereby inappropriately skew the results, system 700 caninclude an outlier component 702 that can be configured to determinewhere one or more mobile devices are reporting vastly differentmeasurements when compared with reported information from other mobiledevices.

In an implementation, outlier component 702 can review the timingmeasurements received from each device and can cause other systemcomponents to ignore faulty measurements. For example, outlier component702 can utilize outlier detection, which can include identifying timingmeasurements that are distinct from a set of other, substantially thesame, timing measurements (e.g., timing measurements from the samesector, timing measurements at the same or similar location, and soforth). If one or more distinct timing measurements are discovered,outlier component 702 can remove (e.g., delete) the distinct timingmeasurement from the database 212.

In another implementation, outlier component 702 can be configured toflag the one or more timing measurements, wherein the flag instructs theother system components to ignore the flagged timing measurement. Insome implementations, outlier component 702 can delete or flag allmeasurements (and associated sector pairs) from the mobile device thatexhibits the potentially erroneous measurement reports.

Additionally or alternatively, system 700 can include an identifiercomponent 704 that can be configured to separate the reports based onmobile type. For example, system 700 can be utilized to distinguishbetween mobile types in order to determine whether the measurementsindicate scrambling code confusion or instead whether the measurementsindicate that a particular mobile type is reporting widely differentmeasurements than those measurements being reported by other mobiletypes.

Information related to the type of mobile device that is reporting thevarious information (e.g., timing measurements, position information,and so forth) can be derived by identifier component 704 based on theIMSI conveyed by the mobile device. For example, identifier component704 can access a database or other storage media that cross referencesthe IMSI to a mobile type. Identifier component 704 can separate thevarious reported information by mobile type. Over time, the reportedinformation can be reviewed to determine whether a particular mobiletype is providing incorrect measurements.

If it is determined that a particular mobile type is reporting incorrectinformation, outlier component 702 can remove the measurements and otherreported information reported by mobile devices of the identified type.In another implementation, outlier component 702 can flag theinformation, which can be ignored by other system components whenattempting to detect the presence of a site that is contributing toscrambling code confusion.

Additionally or alternatively, identifier component 704 can beconfigured to ascertain the type of mobile device providing the reports(e.g., timing information, primary scrambling code, and so forth). Ifthe reports are received from a single mobile device type, the reportsmight not be considered. However, if the reports are received from twoor more mobile devices of different types, the reports might be deemedacceptable to be analyzed for the presence of confusion caused by twosites being detected that share a common scrambling code as discussedherein.

FIG. 8 illustrates an example, non-limiting system 800 that employs anartificial intelligence (AI) component 802, which facilitates automatingone or more features in accordance with the disclosed aspects. Ageneration component 804, an analysis component 806, an assessmentcomponent 808, a database 810, as well as other components (notillustrated) can include functionality, as more fully described herein,for example, with regard to the previous figures. The disclosed aspects(e.g., in connection with detecting sites that contribute to scramblingcode confusion and/or detecting faulty mobile timing measurements) canemploy various AI-based schemes for carrying out various aspectsthereof. For example, a process for collecting timing measurements,primary scrambling codes, position information, and/or mobile devicetype information can be facilitated through an example automaticclassifier system and process.

An example classifier can be a function that maps an input attributevector, x=(x1, x2, x3, x4, xn), to a confidence that the input belongsto a class, that is, f(x)=confidence(class). Such classification canemploy a probabilistic and/or statistical-based analysis (e.g.,factoring into the analysis utilities and costs) to prognose or infer anaction that should be automatically performed. In the case ofcommunication systems, for example, attributes can be information storedin database 810, and the classes can be categories or areas of interest(e.g., timing measurements related to sector pairs).

A support vector machine (SVM) is an example of a classifier that can beemployed. The SVM can operate by finding a hypersurface in the space ofpossible inputs, which the hypersurface attempts to split the triggeringcriteria from the non-triggering events. Intuitively, this makes theclassification correct for testing data that is near, but not identicalto training data. Other directed and undirected model classificationapproaches include, for example, naïve Bayes, Bayesian networks,decision trees, neural networks, fuzzy logic models, and probabilisticclassification models providing different patterns of independence canbe employed. Classification as used herein also may be inclusive ofstatistical regression that is utilized to develop models of priority.

As will be readily noted, the disclosed aspects can employ classifiersthat are explicitly trained (e.g., through a generic training data) aswell as implicitly trained (e.g., through observing timing measurementsand other received data, receiving extrinsic information, and so on).For example, SVMs can be configured through a learning or training phasewithin a classifier constructor and feature selection module. Thus, theclassifier(s) can be used to automatically learn and perform a number offunctions, including but not limited to determining according to apredetermined criteria whether a pair of sites that utilize a samescrambling code has been detected, whether a type of mobile device isproviding incorrect information, and so on. The criteria can include,but is not limited to, historical timing measurements, mobile devicetype, problems associated with soft handover within a wirelesscommunications network, location of the mobile device, operatingprocedures associated with the network, and so on.

In view of the example systems shown and described herein, methods thatmay be implemented in accordance with the one or more of the disclosedaspects, will be better understood with reference to the following flowcharts. While, for purposes of simplicity of explanation, the methodsare shown and described as a series of blocks, it is to be understoodthat the disclosed aspects are not limited by the number or order ofblocks, as some blocks may occur in different orders and/or atsubstantially the same time with other blocks from what is depicted anddescribed herein. Moreover, not all illustrated blocks may be requiredto implement the methods described hereinafter. It is noted that thefunctionality associated with the blocks may be implemented by software,hardware, a combination thereof or any other suitable means (e.g.device, system, process, component). Additionally, it is also noted thatthe methods disclosed hereinafter and throughout this specification arecapable of being stored on an article of manufacture to facilitatetransporting and transferring such methodologies to various devices.Those skilled in the art will understand that a method couldalternatively be represented as a series of interrelated states orevents, such as in a state diagram. The various methods disclosed hereincan be performed by a system comprising at least one processor.

FIG. 9 illustrates a method 900 for detection of scrambling codeconflicts in a wireless communications network, according to an aspect.Method 900 starts, at 902, when timing measurements and locationinformation is received from a plurality of mobile devices. In anaspect, the timing measurements comprise identification information ofthe respective radios.

At 904, a listing of reference values for radio pairs is determined. Thelisting of reference values can be construed from the timingmeasurements. For example, the reference values can be created bymatching a location of the mobile device (e.g., from the receivedlocation information). Each timing measurement in the set of timingmeasurements can be associated with a radio identified by a primaryscrambling code. The radio pairs can be created from the radiosidentified in the set of timing measurements. An observed timedifference can be calculated for each pair of radios and a propagationdelay can be removed from the observed time difference value to derivethe reference value. In an implementation, the reference value can beretained in a database with other reference values.

A first subset of the set of reference values are evaluated, at 906. Thefirst subset of the set of reference values can comprise a first radio.Based on the comparison, at 908, it is determined that the first radiocontributes to at least a set of the plurality of mobile devicesreceiving communication from two radios that use a same scrambling coderesulting in scrambling code confusion.

FIG. 10 illustrates an example, non-limiting method 1000 for identifyingat least one radio that is causing the scrambling code conflict,according to an aspect. At 1002, timing measurements and locationinformation is received from a set of mobile devices. A list ofreference values for radio pairs can be constructed from the timingmeasurements, at 1004. In an implementation, constructing the list ofreference values can comprise computing, at 1006, an observed timedifference value for each radio pair. At 1008, a propagation delay isremoved from the observed time difference value for each radio pair tocreate the list of reference values.

The reference values of the first set of radio pairs is compared againsta first set of other radio pairs, at 1010. The first set of radio pairsand the first set of other radio pairs comprise a similar radio. At1012, a determination is made that the first radio is a contributingfactor in the radio scrambling code confusion.

In an implementation, the determination, at 1012, includes determiningthat the compared reference values form at least two sets of referencevalues, at 1014. Based on the two sets of reference values, at 1016, thefirst radio is identified as a cause of the scrambling code conflict.

According to another implementation, the determination, at 1012,includes evaluating the reference values of a second set of the radiopairs against a second set of other radio pairs, at 1018. The second setof the radio pairs and the second set of other radio pairs each comprisea second radio. At 1020, the second radio is eliminated as the cause ofthe scrambling code confusion. For example, the second radio might havea single set of reference values that are within a certain tolerancerange.

FIG. 11 illustrates an example, non-limiting method 1100 for causing oneor more actions to be performed based on detection of scrambling codeconfusion, according to an aspect. At 1102, timing measurements andlocation information is received from mobile devices. A list ofreference values is created, at 1104, from the timing measurements. Thereference values of a first set of the radio pairs is compared against afirst set of other radio pairs, at 1106. The timing measurementsreceived can be measurements taken by the respective mobile device forradios that are identified by their primary scrambling code. Forexample, the timing measurements that are measured by a first device canbe for radios A, B, C, and D and the first set of radio pairs can becreated that include radio pairs AB₁, AC₁, AD₁, BA₁, BC₁, BD₁, CA₁, CB₁,CD₁, DA₁, DB₁, and DC₁, where subscript 1 indicates the first radio.Further, a second radio can measure and report timing measurements forradios A, C, and D. Based on these reported timing measurements a firstset of other radio pairs can be created that include radio pairs AC₂,AD₂, CA₂, CD₂, DA₂, and DC₂, where subscript 2 indicates the secondradio. A subset of the first set of radio pairs is compared against asubset of the first set of other radio pairs. For example, to evaluateradio C, a subset of the first set of radio pairs (AC₁, BC₁, CA₁, CB₁,CD₁ and CD₁) is compared against a subset of the first set of otherradio pairs (AC₂, CA₂, CD₂, DC₂), where C is the common radio betweenthe pairs.

A determination is made, at 1108, that the first radio contributes to ascrambling code conflict. In an implementation, method 1110 can includegenerating, at 1110, a report that identifies the first radio as causingthe scrambling code confusion. The report can be output, at 1112, toanother device, which can be a device of a network planner. Upon receiptof the report, the network planner can update the scrambling reuse planin an attempt to mitigate scrambling code conflicts.

In another implementation, at 1114, an alternative scrambling code canautomatically be identified for the first radio. At 1116, thealternative scrambling code can be allocated to the first radio. Forexample, the radio might be included in a self-configuring network,wherein when new base stations are added and/or confusion is identified,the network dynamically changes one or more parameters in order toconfigure the network for better performance.

By way of further description with respect to one or more non-limitingways to detect scrambling code conflicts, FIG. 12 is a schematic examplewireless environment 1200 that can operate in accordance with aspectsdescribed herein. In particular, example wireless environment 1200illustrates a set of wireless network macro cells. Three coverage macrocells 1202, 1204, and 1206 include the illustrative wirelessenvironment; however, it is noted that wireless cellular networkdeployments can encompass any number of macro cells. Coverage macrocells 1202, 1204, and 1206 are illustrated as hexagons; however,coverage cells can adopt other geometries generally dictated by adeployment configuration or floor plan, geographic areas to be covered,and so on. Each macro cell 1202, 1204, and 1206 is sectorized in a 2π/3configuration in which each macro cell includes three sectors,demarcated with dashed lines in FIG. 12. It is noted that othersectorizations are possible, and aspects or features of the disclosedsubject matter can be exploited regardless of type of sectorization.Macro cells 1202, 1204, and 1206 are served respectively through basestations or eNodeBs 1208, 1210, and 1212. Any two eNodeBs can beconsidered an eNodeB site pair (NBSP). It is noted that radiocomponent(s) are functionally coupled through links such as cables(e.g., RF and microwave coaxial lines), ports, switches, connectors, andthe like, to a set of one or more antennas that transmit and receivewireless signals (not illustrated). It is noted that a radio networkcontroller (not shown), which can be a part of mobile networkplatform(s) 1214, and set of base stations (e.g., eNode B 1208, 1210,and 1212) that serve a set of macro cells; electronic circuitry orcomponents associated with the base stations in the set of basestations; a set of respective wireless links (e.g., links 1216, 1218,and 1220) operated in accordance to a radio technology through the basestations, form a macro radio access network (RAN). It is further notedthat, based on network features, the radio controller can be distributedamong the set of base stations or associated radio equipment. In anaspect, for UMTS-based networks, wireless links 1216, 1218, and 1220embody a Uu interface (UMTS Air Interface).

Mobile network platform(s) 1214 facilitates circuit switched (CS)-based(e.g., voice and data) and packet-switched (PS) (e.g., internet protocol(IP), frame relay, or asynchronous transfer mode (ATM)) traffic andsignaling generation, as well as delivery and reception for networkedtelecommunication, in accordance with various radio technologies fordisparate markets. Telecommunication is based at least in part onstandardized protocols for communication determined by a radiotechnology utilized for communication. In addition, telecommunicationcan exploit various frequency bands, or carriers, which include any EMfrequency bands licensed by the service provider network 1222 (e.g.,personal communication services (PCS), advanced wireless services (AWS),general wireless communications service (GWCS), and so forth), and anyunlicensed frequency bands currently available for telecommunication(e.g., the 2.4 GHz industrial, medical and scientific (IMS) band or oneor more of the 5 GHz set of bands). In addition, mobile networkplatform(s) 1214 can control and manage base stations 1208, 1210, and1212 and radio component(s) associated thereof, in disparate macro cells1202, 1204, and 1206 by way of, for example, a wireless networkmanagement component (e.g., radio network controller(s), cellulargateway node(s), etc.) Moreover, wireless network platform(s) canintegrate disparate networks (e.g., femto network(s), Wi-Fi network(s),femto cell network(s), broadband network(s), service network(s),enterprise network(s), and so on). In cellular wireless technologies(e.g., 3rd Generation Partnership Project (3GPP) Universal MobileTelecommunication System (UMTS), Global System for Mobile Communication(GSM)), mobile network platform 1214 can be embodied in the serviceprovider network 1222.

In addition, wireless backhaul link(s) 1224 can include wired linkcomponents such as T1/E1 phone line; a digital subscriber line (DSL)either synchronous or asynchronous; an asymmetric DSL (ADSL); an opticalfiber backbone; a coaxial cable, etc.; and wireless link components suchas line-of-sight (LOS) or non-LOS links which can include terrestrialair-interfaces or deep space links (e.g., satellite communication linksfor navigation). In an aspect, for UMTS-based networks, wirelessbackhaul link(s) 1224 embodies IuB interface.

It is noted that while example wireless environment 1200 is illustratedfor macro cells and macro base stations, aspects, features andadvantages of the disclosed subject matter can be implemented inmicrocells, picocells, femto cells, or the like, wherein base stationsare embodied in home-based equipment related to access to a network.

To provide further context for various aspects of the disclosed subjectmatter, FIG. 13 illustrates a block diagram of an embodiment of accessequipment and/or software 1300 related to access of a network (e.g.,base station, wireless access point, femtocell access point, and soforth) that can enable and/or exploit features or aspects of thedisclosed aspects.

Access equipment and/or software 1300 related to access of a network canreceive and transmit signal(s) from and to wireless devices, wirelessports, wireless routers, etc. through segments 1302 ₁-1302 _(B) (B is apositive integer). Segments 1302 ₁-1302 _(B) can be internal and/orexternal to access equipment and/or software 1300 related to access of anetwork, and can be controlled by a monitor component 1304 and anantenna component 1306. Monitor component 1304 and antenna component1306 can couple to communication platform 1308, which can includeelectronic components and associated circuitry that provide forprocessing and manipulation of received signal(s) and other signal(s) tobe transmitted.

In an aspect, communication platform 1308 includes areceiver/transmitter 1310 that can convert analog signals to digitalsignals upon reception of the analog signals, and can convert digitalsignals to analog signals upon transmission. In addition,receiver/transmitter 1310 can divide a single data stream into multiple,parallel data streams, or perform the reciprocal operation. Coupled toreceiver/transmitter 1310 can be a multiplexer/demultiplexer 1312 thatcan facilitate manipulation of signals in time and frequency space.Multiplexer/demultiplexer 1312 can multiplex information (data/trafficand control/signaling) according to various multiplexing schemes such astime division multiplexing (TDM), frequency division multiplexing (FDM),orthogonal frequency division multiplexing (OFDM), code divisionmultiplexing (CDM), space division multiplexing (SDM). In addition,multiplexer/demultiplexer component 1312 can scramble and spreadinformation (e.g., codes, according to substantially any code known inthe art, such as Hadamard-Walsh codes, Baker codes, Kasami codes,polyphase codes, and so forth).

A modulator/demodulator 1314 is also a part of communication platform1308, and can modulate information according to multiple modulationtechniques, such as frequency modulation, amplitude modulation (e.g.,M-ary quadrature amplitude modulation (QAM), with M a positive integer);phase-shift keying (PSK); and so forth).

Access equipment and/or software 1300 related to access of a networkalso includes a processor 1316 configured to confer, at least in part,functionality to substantially any electronic component in accessequipment and/or software 1300. In particular, processor 1316 canfacilitate configuration of access equipment and/or software 1300through, for example, monitor component 1304, antenna component 1306,and one or more components therein. Additionally, access equipmentand/or software 1300 can include display interface 1318, which candisplay functions that control functionality of access equipment and/orsoftware 1300, or reveal operation conditions thereof. In addition,display interface 1318 can include a screen to convey information to anend user. In an aspect, display interface 1318 can be an LCD (LiquidCrystal Display), a plasma panel, a monolithic thin-film basedelectrochromic display, and so on. Moreover, display interface 1318 caninclude a component (e.g., speaker) that facilitates communication ofaural indicia, which can also be employed in connection with messagesthat convey operational instructions to an end user. Display interface1318 can also facilitate data entry (e.g., through a linked keypad orthrough touch gestures), which can cause access equipment and/orsoftware 1300 to receive external commands (e.g., restart operation).

Broadband network interface 1320 facilitates connection of accessequipment and/or software 1300 to a service provider network (not shown)that can include one or more cellular technologies (e.g., 3GPP UMTS,GSM, and so on.) through backhaul link(s) (not shown), which enableincoming and outgoing data flow. Broadband network interface 1320 can beinternal or external to access equipment and/or software 1300, and canutilize display interface 1318 for end-user interaction and statusinformation delivery.

Processor 1316 can be functionally connected to communication platform1308 and can facilitate operations on data (e.g., symbols, bits, orchips) for multiplexing/demultiplexing, such as effecting direct andinverse fast Fourier transforms, selection of modulation rates,selection of data packet formats, inter-packet times, and so on.Moreover, processor 1316 can be functionally connected, through data,system, or an address bus 1322, to display interface 1318 and broadbandnetwork interface 1320, to confer, at least in part, functionality toeach of such components.

In access equipment and/or software 1300, memory 1324 can retainlocation and/or coverage area (e.g., macro sector, identifier(s)),access list(s) that authorize access to wireless coverage through accessequipment and/or software 1300, sector intelligence that can includeranking of coverage areas in the wireless environment of accessequipment and/or software 1300, radio link quality and strengthassociated therewith, or the like. Memory 1324 also can store datastructures, code instructions and program modules, system or deviceinformation, code sequences for scrambling, spreading and pilottransmission, access point configuration, and so on. Processor 1316 canbe coupled (e.g., through a memory bus) to memory 1324 in order to storeand retrieve information used to operate and/or confer functionality tothe components, platform, and interface that reside within accessequipment and/or software 1300.

As it employed in the subject specification, the term “processor” canrefer to substantially any computing processing unit or deviceincluding, but not limited to including, single-core processors;single-processors with software multithread execution capability;multi-core processors; multi-core processors with software multithreadexecution capability; multi-core processors with hardware multithreadtechnology; parallel platforms; and parallel platforms with distributedshared memory. Additionally, a processor can refer to an integratedcircuit, an application specific integrated circuit (ASIC), a digitalsignal processor (DSP), a field programmable gate array (FPGA), aprogrammable logic controller (PLC), a complex programmable logic device(CPLD), a discrete gate or transistor logic, discrete hardwarecomponents, or any combination thereof designed to perform the functionsand/or processes described herein. Processors can exploit nano-scalearchitectures such as, but not limited to, molecular and quantum-dotbased transistors, switches and gates, in order to optimize space usageor enhance performance of mobile devices. A processor may also beimplemented as a combination of computing processing units.

In the subject specification, terms such as “store,” “data store,” datastorage,” “database,” and substantially any other information storagecomponent relevant to operation and functionality of a component and/orprocess, refer to “memory components,” or entities embodied in a“memory,” or components including the memory. It is noted that thememory components described herein can be either volatile memory ornonvolatile memory, or can include both volatile and nonvolatile memory.

By way of illustration, and not limitation, nonvolatile memory, forexample, can be included in memory 1324, non-volatile memory (seebelow), disk storage (see below), and memory storage (see below).Further, nonvolatile memory can be included in read only memory (ROM),programmable ROM (PROM), electrically programmable ROM (EPROM),electrically erasable ROM (EEPROM), or flash memory. Volatile memory caninclude random access memory (RAM), which acts as external cache memory.By way of illustration and not limitation, RAM is available in manyforms such as synchronous RAM (SRAM), dynamic RAM (DRAM), synchronousDRAM (SDRAM), double data rate SDRAM (DDR SDRAM), enhanced SDRAM(ESDRAM), Synchlink DRAM (SLDRAM), and direct Rambus RAM (DRRAM).Additionally, the disclosed memory components of systems or methodsherein are intended to include, without being limited to including,these and any other suitable types of memory.

In order to provide a context for the various aspects of the disclosedsubject matter, FIG. 14, and the following discussion, are intended toprovide a brief, general description of a suitable environment in whichthe various aspects of the disclosed subject matter can be implemented.While the subject matter has been described above in the general contextof computer-executable instructions of a computer program that runs on acomputer and/or computers, those skilled in the art will recognize thatthe various aspects also can be implemented in combination with otherprogram modules. Generally, program modules include routines, programs,components, data structures, etc. that perform particular tasks and/orimplement particular abstract data types. For example, in memory (suchas memory 202) there can be software, which can instruct a processor(such as processor 204) to perform various actions. The processor can beconfigured to execute the instructions in order to implement theanalysis of monitoring an uplink power level, detecting the uplink powerlevel is at or above a threshold level, and/or disable transmission ofat least one message as a result of the monitored uplink power level.

Moreover, those skilled in the art will understand that the variousaspects can be practiced with other computer system configurations,including single-processor or multiprocessor computer systems,mini-computing devices, mainframe computers, as well as personalcomputers, base stations hand-held computing devices or user equipment,such as a PDA, phone, watch, and so forth, microprocessor-based orprogrammable consumer or industrial electronics, and the like. Theillustrated aspects can also be practiced in distributed computingenvironments where tasks are performed by remote processing devices thatare linked through a communications network; however, some if not allaspects of the subject disclosure can be practiced on stand-alonecomputers. In a distributed computing environment, program modules canbe located in both local and remote memory storage devices.

With reference to FIG. 14, a block diagram of a computing system 1400operable to execute the disclosed systems and methods is illustrated, inaccordance with an embodiment. Computer 1402 includes a processing unit1404, a system memory 1406, and a system bus 1408. System bus 1408couples system components including, but not limited to, system memory1406 to processing unit 1404. Processing unit 1404 can be any of variousavailable processors. Dual microprocessors and other multiprocessorarchitectures also can be employed as processing unit 1404.

System bus 1408 can be any of several types of bus structure(s)including a memory bus or a memory controller, a peripheral bus or anexternal bus, and/or a local bus using any variety of available busarchitectures including, but not limited to, Industrial StandardArchitecture (ISA), Micro-Channel Architecture (MSA), Extended ISA(EISA), Intelligent Drive Electronics (IDE), VESA Local Bus (VLB),Peripheral Component Interconnect (PCI), Card Bus, Universal Serial Bus(USB), Advanced Graphics Port (AGP), Personal Computer Memory CardInternational Association bus (PCMCIA), Firewire (IEEE 1194), and SmallComputer Systems Interface (SCSI).

System memory 1406 includes volatile memory 1410 and nonvolatile memory1412. A basic input/output system (BIOS), containing routines totransfer information between elements within computer 1402, such asduring start-up, can be stored in nonvolatile memory 1412. By way ofillustration, and not limitation, nonvolatile memory 1412 can includeROM, PROM, EPROM, EEPROM, or flash memory. Volatile memory 1410 caninclude RAM, which acts as external cache memory. By way of illustrationand not limitation, RAM is available in many forms such as SRAM, dynamicRAM (DRAM), synchronous DRAM (SDRAM), double data rate SDRAM (DDRSDRAM), enhanced SDRAM (ESDRAM), Synchlink DRAM (SLDRAM), Rambus directRAM (RDRAM), direct Rambus dynamic RAM (DRDRAM), and Rambus dynamic RAM(RDRAM).

Computer 1402 also includes removable/non-removable,volatile/non-volatile computer storage media. In an implementation, thenon-transitory computer-readable storage medium can storecomputer-executable instructions that, in response to execution, cause asystem including a processor to perform operations. The operations caninclude storing a plurality of observed time difference reference valuesfor a plurality of radio pairs based on timing measurements and locationinformation reported by a plurality of mobile devices. The operationscan also include comparing the plurality of observed time differencereference values for sets of radio pairs of the plurality of radiopairs. The sets of radio pairs share a common radio. The operations canalso include identifying the common radio as a cause of scrambling codeconfusion resulting from two radios using a same scrambling code.

In an implementation, the operations can also include associating alocation of a mobile device of the plurality of mobile devices to a setof timing measurements reported by the mobile device. The set of timingmeasurements are associated with a group of radios identified by a setof primary scrambling codes. Further to this implementation, theoperations can include creating a first set of radio pairs from thegroup of radios associated with the set of timing measurements anddetermining a first set of observed time difference values for the firstset of radio pairs. The operations can also include removing propagationdelays from the first set of observed time difference values todetermine a first set of observed time difference reference values andpopulating a data store with the first set of observed time differencereference values for the first set of radio pairs.

According to another implementation, a pair of radios comprises a firstradio and a second radio and wherein the operations further comprisesubtracting a first timing measurement of the first radio from a secondtiming measurement of the second radio to calculate the observed timedifference value between the first radio and the second radio. In afurther implementation, the operations can include establishing adifferent primary scrambling code for the common radio and assigning thedifferent primary scrambling code to the common radio to mitigate thescrambling code confusion.

FIG. 14 illustrates the removable/non-removable, volatile/non-volatilecomputer storage media as, for example, disk storage 1414. Disk storage1414 includes, but is not limited to, devices such as a magnetic diskdrive, floppy disk drive, tape drive, Jaz drive, Zip drive, LS-100drive, flash memory card, or memory stick. In addition, disk storage1414 can include storage media separately or in combination with otherstorage media including, but not limited to, an optical disk drive suchas a compact disk ROM device (CD-ROM), CD recordable drive (CD-R Drive),CD rewritable drive (CD-RW Drive) or a digital versatile disk ROM drive(DVD-ROM). To facilitate connection of the disk storage 1414 to systembus 1408, a removable or non-removable interface is typically used, suchas interface component 1416.

It is to be noted that FIG. 14 describes software that acts as anintermediary between users and computer resources described in suitableoperating environment. Such software includes an operating system 1418.Operating system 1418, which can be stored on disk storage 1414, acts tocontrol and allocate resources of computer system 1402. Systemapplications 1420 can take advantage of the management of resources byoperating system 1418 through program modules 1422 and program data 1424stored either in system memory 1406 or on disk storage 1414. It is to beunderstood that the disclosed subject matter can be implemented withvarious operating systems or combinations of operating systems.

A user can enter commands or information, for example through interfacecomponent 1416, into computer system 1402 through input device(s) 1426.Input devices 1426 include, but are not limited to, a pointing devicesuch as a mouse, trackball, stylus, touch pad, keyboard, microphone,joystick, game pad, satellite dish, scanner, TV tuner card, digitalcamera, digital video camera, web camera, and the like. These and otherinput devices connect to processing unit 1404 through system bus 1408through interface port(s) 1428. Interface port(s) 1428 include, forexample, a serial port, a parallel port, a game port, and a universalserial bus (USB). Output device(s) 1430 use some of the same type ofports as input device(s) 1426.

Thus, for example, a USB port can be used to provide input to computer1402 and to output information from computer 1402 to an output device1430. Output adapter 1432 is provided to illustrate that there are someoutput devices 1430, such as monitors, speakers, and printers, amongother output devices 1430, which use special adapters. Output adapters1432 include, by way of illustration and not limitation, video and soundcards that provide means of connection between output device 1430 andsystem bus 1408. It is also noted that other devices and/or systems ofdevices provide both input and output capabilities such as remotecomputer(s) 1434.

Computer 1402 can operate in a networked environment using logicalconnections to one or more remote computers, such as remote computer(s)1434. Remote computer(s) 1434 can be a personal computer, a server, arouter, a network PC, a workstation, a microprocessor based appliance, apeer device, or other common network node and the like, and typicallyincludes many or all of the elements described relative to computer1402.

For purposes of brevity, only one memory storage device 1436 isillustrated with remote computer(s) 1434. Remote computer(s) 1434 islogically connected to computer 1402 through a network interface 1438and then physically connected through communication connection 1440.Network interface 1438 encompasses wire and/or wireless communicationnetworks such as local-area networks (LAN) and wide-area networks (WAN).LAN technologies include Fiber Distributed Data Interface (FDDI), CopperDistributed Data Interface (CDDI), Ethernet, Token Ring and the like.WAN technologies include, but are not limited to, point-to-point links,circuit switching networks like Integrated Services Digital Networks(ISDN) and variations thereon, packet switching networks, and DigitalSubscriber Lines (DSL).

Communication connection(s) 1440 refer(s) to hardware/software employedto connect network interface 1438 to system bus 1408. Whilecommunication connection 1440 is shown for illustrative clarity insidecomputer 1402, it can also be external to computer 1402. Thehardware/software for connection to network interface 1438 can include,for example, internal and external technologies such as modems,including regular telephone grade modems, cable modems and DSL modems,ISDN adapters, and Ethernet cards.

It is to be noted that aspects, features, or advantages of the aspectsdescribed in the subject specification can be exploited in substantiallyany communication technology. For example, 4G technologies, Wi-Fi,WiMAX, Enhanced GPRS, 3GPP LTE, 3GPP2 UMB, 3GPP UMTS, HSPA, HSDPA,HSUPA, GERAN, UTRAN, LTE Advanced. Additionally, substantially allaspects disclosed herein can be exploited in legacy telecommunicationtechnologies; e.g., GSM. In addition, mobile as well non-mobile networks(e.g., Internet, data service network such as IPTV) can exploit aspector features described herein.

Various aspects or features described herein can be implemented as amethod, apparatus, or article of manufacture using standard programmingand/or engineering techniques. In addition, various aspects disclosed inthe subject specification can also be implemented through programmodules stored in a memory and executed by a processor, or othercombination of hardware and software, or hardware and firmware.

Other combinations of hardware and software or hardware and firmware canenable or implement aspects described herein, including disclosedmethod(s). The term “article of manufacture” as used herein is intendedto encompass a computer program accessible from any computer-readabledevice, carrier, or media. For example, computer readable media caninclude but are not limited to magnetic storage devices (e.g., harddisk, floppy disk, magnetic strips . . . ), optical discs (e.g., compactdisc (CD), digital versatile disc (DVD), blu-ray disc (BD) . . . ),smart cards, and flash memory devices (e.g., card, stick, key drive . .. ).

Computing devices typically include a variety of media, which caninclude computer-readable storage media or communications media, whichtwo terms are used herein differently from one another as follows.

Computer-readable storage media can be any available storage media thatcan be accessed by the computer and includes both volatile andnonvolatile media, removable and non-removable media. By way of example,and not limitation, computer-readable storage media can be implementedin connection with any method or technology for storage of informationsuch as computer-readable instructions, program modules, structureddata, or unstructured data. Computer-readable storage media can include,but are not limited to, RAM, ROM, EEPROM, flash memory or other memorytechnology, CD-ROM, digital versatile disk (DVD) or other optical diskstorage, magnetic cassettes, magnetic tape, magnetic disk storage orother magnetic storage devices, or other tangible and/or non-transitorymedia which can be used to store desired information. Computer-readablestorage media can be accessed by one or more local or remote computingdevices, e.g., through access requests, queries or other data retrievalprotocols, for a variety of operations with respect to the informationstored by the medium.

Communications media typically embody computer-readable instructions,data structures, program modules or other structured or unstructureddata in a data signal such as a modulated data signal, e.g., a carrierwave or other transport mechanism, and includes any information deliveryor transport media. The term “modulated data signal” or signals refersto a signal that has one or more of its characteristics set or changedin such a manner as to encode information in one or more signals. By wayof example, and not limitation, communication media include wired media,such as a wired network or direct-wired connection, and wireless mediasuch as acoustic, RF, infrared and other wireless media.

What has been described above includes examples of systems and methodsthat provide advantages of the one or more aspects. It is, of course,not possible to describe every conceivable combination of components ormethods for purposes of describing the aspects, but one of ordinaryskill in the art may recognize that many further combinations andpermutations of the claimed subject matter are possible. Furthermore, tothe extent that the terms “includes,” “has,” “possesses,” and the likeare used in the detailed description, claims, appendices and drawingssuch terms are intended to be inclusive in a manner similar to the term“comprising” as “comprising” is interpreted when employed as atransitional word in a claim.

As used in this application, the terms “component,” “system,” and thelike are intended to refer to a computer-related entity or an entityrelated to an operational apparatus with one or more specificfunctionalities, wherein the entity can be either hardware, acombination of hardware and software, software, or software inexecution. As an example, a component may be, but is not limited tobeing, a process running on a processor, a processor, an object, anexecutable, a thread of execution, computer-executable instructions, aprogram, and/or a computer. By way of illustration, both an applicationrunning on a server or network controller, and the server or networkcontroller can be a component. One or more components may reside withina process and/or thread of execution and a component may be localized onone computer and/or distributed between two or more computers. Also,these components can execute from various computer readable media havingvarious data structures stored thereon. The components may communicatevia local and/or remote processes such as in accordance with a signalhaving one or more data packets (e.g., data from one componentinteracting with another component in a local system, distributedsystem, and/or across a network such as the Internet with other systemsvia the signal). As another example, a component can be an apparatuswith specific functionality provided by mechanical parts operated byelectric or electronic circuitry, which is operated by a software, orfirmware application executed by a processor, wherein the processor canbe internal or external to the apparatus and executes at least a part ofthe software or firmware application. As yet another example, acomponent can be an apparatus that provides specific functionalitythrough electronic components without mechanical parts, the electroniccomponents can include a processor therein to execute software orfirmware that confers at least in part the functionality of theelectronic components. As further yet another example, interface(s) caninclude input/output (I/O) components as well as associated processor,application, or Application Programming Interface (API) components.

The term “set”, “subset”, or the like as employed herein excludes theempty set (e.g., the set with no elements therein). Thus, a “set”,“subset”, or the like includes one or more elements or periods, forexample. As an illustration, a set of periods includes one or moreperiods; a set of transmissions includes one or more transmissions; aset of resources includes one or more resources; a set of messagesincludes one or more messages, and so forth.

In addition, the term “or” is intended to mean an inclusive “or” ratherthan an exclusive “or.” That is, unless specified otherwise, or clearfrom context, “X employs A or B” is intended to mean any of the naturalinclusive permutations. That is, if X employs A; X employs B; or Xemploys both A and B, then “X employs A or B” is satisfied under any ofthe foregoing instances. Moreover, articles “a” and “an” as used in thesubject specification and annexed drawings should generally be construedto mean “one or more” unless specified otherwise or clear from contextto be directed to a singular form.

What is claimed is:
 1. A system, comprising: a processor; and a memorythat stores executable instructions that, when executed by theprocessor, facilitate performance of operations, comprising: comparing afirst transmission time difference of a first radio pair to a secondtransmission time difference of a second radio pair, resulting incomparison data; and based on the comparison data, and in response todetermining that the second radio pair has been determined to havecontributed to a transmission interference, allocating a scrambling codefor use by the second radio pair.
 2. The system of claim 1, wherein theallocating the scrambling code to the second radio comprises reassigningthe scrambling code to the second radio pair.
 3. The system of claim 2,wherein the first transmission time difference is associated with afirst reference value.
 4. The system of claim 3, wherein the secondtransmission time difference is associated with a second referencevalue.
 5. The system of claim 4, wherein the comparing comprisescomparing the first reference value to the second reference value. 6.The system of claim 5, wherein the first reference value and the secondreference value comprise radio identification data representative ofrespective radio identifications.
 7. The system of claim 1, wherein theoperations further comprise: determining a propagation delay associatedwith the comparison data.
 8. The system of claim 7, wherein thepropagation delay is based on a difference between a first location ofthe first radio pair and a second location of the second radio pair. 9.The system of claim 3, wherein first reference values associated withthe first transmission time difference of the first radio pair comprisereference values within a tolerance range.
 10. The system of claim 1,wherein the operations further comprise: generating report data thatidentifies the second radio pair as causing the transmissioninterference.
 11. The system of claim 10, wherein the operations furthercomprise: transmitting the report data to a mobile device to facilitatedecreasing the transmission interference.
 12. A method, comprising:generating, by a system comprising a processor, comparison dataassociated with comparing a first transmission time difference of afirst radio pair to a second transmission time difference of a secondradio pair; and in response to determining, based on the comparisondata, that the second radio pair contributes to a transmissioninterference, identifying, by the system, a scrambling code to allocatefor use by the second radio pair.
 13. The method of claim 12, furthercomprising: mapping, by the system, a location associated with a mobiledevice to time data reported by the mobile device.
 14. The method ofclaim 13, further comprising: based on determining a propagation delay,removing, by the system, the propagation delay from a time differencebetween the first transmission time difference and the secondtransmission time difference.
 15. The method of claim 14, wherein theremoving the propagation delay results in a modified time difference,and wherein the modified time difference is used to create a referencevalue.
 16. The method of claim 12, wherein the scrambling code is afirst scrambling code, and further comprising: in response to ascrambling code conflict between the first scrambling code and a secondscrambling code, allocating, by the system, a third scrambling code foruse by the second radio pair, wherein the first scrambling code and thesecond scrambling code are a same scrambling code.
 17. Amachine-readable medium, comprising executable instructions that, whenexecuted by a processor, facilitate performance of operations,comprising: in response to a comparison of first reference data relatedto a first radio pair to second reference data related to a second radiopair, determining that the first radio pair interferes with atransmission; and in response to the determining that the first radiopair interferes with the transmission, reassigning a scrambling code ofthe first radio pair.
 18. The machine-readable medium of claim 17,wherein the operations further comprise: in response to the reassigningthe scrambling code, updating a scrambling code data structureassociated with a reuse of the scrambling code.
 19. The machine-readablemedium of claim 17, wherein the operations further comprise: mappinglocation data of a mobile device to determine the first reference data.20. The machine-readable medium of claim 17, wherein the scrambling codeis a first scrambling code, and wherein the reassigning the firstscrambling code is based on a scrambling code conflict between a secondscrambling code and a third scrambling code.